﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using TTDataAccess;
using TTEntity;
using System.Data;
namespace TTBusiness
{
    /// <summary>
    /// Create by ThiepND 23/3/2011
    /// </summary>
    public class clsBSAdmin
    {
        clsDAAdmin objDA = new clsDAAdmin();
        /// <summary>
        /// Lấy dữ liệu từ một row của bảng Account gán vào đối tượng Account
        /// </summary>
        /// <param name="dr">DataRow in DataTable of Account</param>
        /// <returns>Đối tượng Account đã có dữ liệu</returns>
        private clsAdmin getDataFromRow(DataRow dr)
        {
            try
            {
                clsAdmin obj = new clsAdmin();
                if (!dr.Equals(null))
                {
                    if (!dr.IsNull("UserName"))
                        obj.UserName = dr["UserName"].ToString();
                    if (!dr.IsNull("Password"))
                        obj.Password = dr["Password"].ToString();
                    if (!dr.IsNull("Email"))
                        obj.Email = dr["Email"].ToString();
                    if (!dr.IsNull("FullName"))
                        obj.FullName = dr["FullName"].ToString();
                    if (!dr.IsNull("OrderRequest"))
                        obj.OrderRequest = Convert.ToBoolean(dr["OrderRequest"]);
                    if (!dr.IsNull("ID"))
                        obj.Id = Convert.ToInt32(dr["ID"]);
                }
                return obj;
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Lấy danh sách Admin trong CSDL
        /// </summary>
        /// <returns>Danh sách Admin</returns>
        public List<clsAdmin> getAll()
        {
            try
            {

                List<clsAdmin> objList = new List<clsAdmin>();
                DataTable dt = new DataTable();
                dt = objDA.GetAll();
                foreach (DataRow dr in dt.Rows)
                {
                    clsAdmin account = new clsAdmin();
                    account = getDataFromRow(dr);
                    objList.Add(account);
                }
                return objList;
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Thêm mới
        /// </summary>
        /// <param name="obj">Đối tượng Admin Muống thêm vào CSDL</param>
        public void Insert(clsAdmin obj)
        {
            try
            {
                objDA.Insert(obj);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Cập nhật
        /// </summary>
        /// <param name="obj">Admin đã thay đổi muốn lưu vào CSDL</param>
        public void Update(clsAdmin obj)
        {
            try
            {
                objDA.Update(obj);
            }
            catch (Exception)
            {

                throw;
            }
        }
        /// <summary>
        /// Xóa Admin theo ID
        /// </summary>
        /// <param name="id">ID Admin muốn xóa</param>
        public void Delete(int id)
        {
            try
            {
                objDA.Delete(id);
            }
            catch (Exception)
            {

                throw;
            }
        }
    }
}
